激光雷达基本介绍 | 您所在的位置:网站首页 › 激光雷达 数据 › 激光雷达基本介绍 |
传感器融合-激光雷达系列文章
传感器融合是将多个传感器采集的数据进行融合处理,以更好感知周围环境;这里首先介绍激光雷达的相关内容,包括激光雷达基本介绍(本节内容),激光点云数据处理方法(点云分割,点云聚类,障碍物识别实例)等。 文章目录 传感器融合-激光雷达系列文章激光雷达简介Lidar系统结构Lidar分类Lidar工作原理Lidar技术指标 激光点云PCL(Point Cloud Library)点云库点云数据存储——PointT点类型PCL可用PointT类型PointXYZ——成员变量:float x,y,z;PointXYZI-成员变量:float x,y,z,intensity 激光雷达简介激光雷达Lidar:Light detection and ranging,激光探测与测距。 Lidar通过向目标物发射激光束并接收反射激光束,通过TOF飞行时间法等手段实现目标物距离,方位,速度,姿态等参数的测量,从而对障碍物、移动物体等目标进行探测、跟踪和识别。 激光波长短(0.5μm~10μm),准直性高,使得激光雷达性能优异: 角分辨率(Velodyne HDL-64E水平视角分辨率:0.1°~0.4°,垂直视角分辨率:0.4°)和距离分辨率高(厘米级);抗干扰能力强;能获得目标多种图像信息(距离,角度,反射率,速度等);![]() ![]() 激光雷达Lidar系统构成: 发射系统;发射激光束即探测信号,包含激光器、发射光学系统;接收系统:接收反射的激光信号,即回波信号,包括接收光学系统、光学滤光装置、光电探测器;信号处理系统:光电转换,数据获取,信号处理,数据校准与输出;控制系统:控制激光激发,信号接收及系统工作模式等;以下是Velodyne HDL64激光雷达,64个激光器Z轴方向呈一定角度布置,水平方向360°机械旋转,角分辨率0.08°,旋转频率10Hz左右,最大探测距离120m(车辆等) Lidar根据其激光光源,信号形式,探测方式,线数,扫描方式,功能用途,运载平台等不同,,有各种类型。 ![]() ![]() ![]() Lidar通过飞行时间法测距:发射并接收反射回的激光光束,计算发射光束和反射光束的飞行时间来进行测距。 激光雷达的主要技术参数如下: 点云:激光测量中,Lidar中的每个激光器发射激光束,经物体反射后得到一个点云(包含距离,反射强度等信息),所有激光反射点的集合即为点云。 PCD点云数据(Point Cloud Data):激光雷达数据的存储格式,如(x,y,z),(x,y,z,i),(x,y,z,RGB)格式存储,(x,y,z)为笛卡尔坐标系中的位置信息,i为反射强度。对于VLP64激光雷达,一个pcd文件包含大约64*360/0.08=288000个(x,y,z,i)值。 PCL是一个开源的C++库用于处理点云数据,包括点云相关的获取,滤波,分割,配准,检索,特征提取,识别,追踪,曲面重建,可视化的模块。 实际应用中,激光点云是复杂的n维结构,有不同类型的存储格式,包括PointXYZ,PointXYZI,PointXYZRGB等。 对于带有SSE功能的处理器,最高效的方法是存储三维坐标为浮点型,然后紧跟一个浮点型数据作为填补位数以满足存储对齐要求。 structure PointXYZ { float x; float y; float z; float padding; }但padding额外的填补会浪费存储空间,因此需要引入PointT模板类型。PCL使用模板(Templates)处理不同格式的点云数据,以实现代码重用。 PCL可用PointT类型PCL可用的PointT类型如要如下: PointXYZ——成员变量:float x, y, z;PointXYZI-成员变量:float x, y, z, intensity;PointXYZRGB-成员变量:float x, y, z, rgb;PointXYZRGBA-成员变量:float x, y, z; unit32_t rgba;简单的二维xy point结构InterestPoint-成员变量:float x, y, z, strength;…… PointXYZ——成员变量:float x,y,z;PointXYZ是使用最常见的点数据类型,只包含三维xyz坐标信息,附加一个浮点数来满足存储对齐,可通过.data[0]或.x来访问x轴坐标值。 union { float data[4]; struct { float x; float y; float z; }; }; PointXYZI-成员变量:float x,y,z,intensityxyz坐标加intensity的point类型。 union{ float data[4]; struct { float x; float y; float z; }; }; union{ struct{ float intensity; }; float data_c[4]; }; |
CopyRight 2018-2019 实验室设备网 版权所有 |